package com.inspur.cloud.entity.dataspace.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
@ApiModel(value = "Kafka列表查询返回对象")
public class KafkaVO {
    /**
     * id
     */
    @ApiModelProperty(value = "本资源ID，编辑或删除、分配的时候需要")
    private Integer resourceId;
    /**
     * 资源拥有者id，因管理员用户id为1，故该字段为1时为公共资源，不为1为拥有者id的用户所拥有，为私有资源
     */
    private Integer owner;

    /**
     * topic
     */
    @ApiModelProperty(value = "主题名")
    private String topicName;

    /**
     * 分区数
     */
    @ApiModelProperty(value = "分区数")
    private Integer partitionNum;

    /**
     * 副本数
     */
    @ApiModelProperty(value = "副本数")
    private Integer replication;

    /**
     * 0无效 1有效，状态待补充
     */
    private Integer status;

    /**
     * 层级数
     */
    private Integer level;

    @ApiModelProperty(value = "租户列表，返回时使用")
    private List<String> tenantList;
    @ApiModelProperty(value = "用户列表，返回时使用")
    private List<String> userList;
    @ApiModelProperty(value = "租户ID列表,传递参数时使用此数据接口，不要直接传用户名")
    private List<Integer> tenantIdList;
    @ApiModelProperty(value = "用户ID列表,传递参数时使用此数据接口，不要直接传用户名")
    private List<Integer> userIdList;
    @ApiModelProperty(value = "权限字段，以|隔开，比如 read|write，需要是小写")
    private String powerList;

    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updDate;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date insDate;
    @ApiModelProperty(value = "创建者")
    private String creator;
}
